package main

import "fmt"

type CInterface interface{
	c()
}

type BInterface interface{
	b()
}

type AInterface interface{
	a()
	BInterface
	CInterface
}

type Stu struct{
	
}

func (s Stu)a(){
	fmt.Println("a")
}

func (s Stu)b(){
	fmt.Println("b")
}

func (s Stu)c(){
	fmt.Println("c")
}

type E interface{

}

func main(){
	//接口间是可以继承的
	var s Stu
	var a AInterface = s

	a.a()
	a.b()
	a.c()

	//空接口可以接任何一个类型
	var e E = s
	var e1 E = a
	fmt.Println(e)
	fmt.Println(e1)

	var e2 interface{} = s
	fmt.Println(e2)

	var num float64 = 9.3
	var e3 E = num
	fmt.Println(e3)
}